Software similarity-based functional cohesion metric
نویسنده
چکیده
Cohesion is an important factor used in evaluating software design quality and modularity. The cohesion of a module refers to the relatedness of the module components. In software engineering, highly cohesive modules are highly desirable due to their high reusability and maintainability. Cohesion is classified according to levels. Functional cohesion, the strongest level, refers to how closely the module parts that contribute to different outputs are related. In this paper, a Similarity-Based Functional Cohesion (SBFC) metric is introduced to measure the functional cohesion of a module in a procedural or object-oriented program. The metric uses the degree of similarity between module data slices as a basis for measuring functional cohesion. The appropriateness of the metric is evaluated both theoretically and empirically. The evaluation results show that the metric does as well as some earlier metrics in indicating the cohesiveness level, and it does better than some in terms of providing different values for the modules of different cohesion. In addition, the SBFC metric is used as an indicator for restructuring the weakly cohesive modules.
منابع مشابه
An object-oriented high-level design-based class cohesion metric
Context: Class cohesion is an important object-oriented software quality attribute. Assessing class cohesion during the object-oriented design phase is one important way to obtain more comprehensible and maintainable software. In practice, assessing and controlling cohesion in large systems implies measuring it automatically. One issue with the few existing cohesion metrics targeted at the high...
متن کاملAutomated use case similarity computation can aid the assessment cohesion and method complexity of classes
Use cases are widely used in early software development phases such requirements analysis. In this paper, we investigate how use case similarity could impact the classes that implement them. We studied if the similarity of use cases could have impact on the lines of code shared between them and on metrics of classes that implement them, such as, coupling, cohesion and method complexity of class...
متن کاملAnalyzing Slicing of Program through Cohesion Metric
This paper presents a new cohesion metric for a program which is used to analyze the slicing criterion. Based on the value of propose cohesion metric it is decided to perform slicing in a program or not. The propose cohesion metrics is also evaluated analytically against Weyuker’s Property and perform comparison with the existing cohesion metrics of Meyers et al. The results in this paper shows...
متن کاملA New Class Cohesion Criterion:
Class cohesion is considered as one of important object-oriented software attributes. Cohesion refers to the degree of the relatedness of the members in a class. High cohesion is a desirable property of classes. Several metrics have been proposed in the literature in order to measure class cohesion in object-oriented systems. They capture class cohesion in terms of connections among members wit...
متن کاملProgram Restructuring Through Clustering Technique
Program restructuring is a key method to improve the quality of ill-structured programs and therefore to increase the understandability and reduce the maintenance cost. It is a challenging task and much research is still ongoing. This paper presents an approach to program restructuring at the functional level based on the clustering technique with cohesion as the major concern. Clustering has b...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
- IET Software
دوره 3 شماره
صفحات -
تاریخ انتشار 2009